プログラミングがちょっと苦手だなあという人はいませんか。生徒の学習行動データを集め、分析する谷口雄太先生は、他の生徒のプログラミングの書き方をマネすることから始め、プログラミングが上達する学習法を教えてくれます。
プログラミングが苦手な人が上達する学習法
真似は上達の基本
学ぶと真似る。この2つの言葉が同じ語源を持っているという説を聞いたことはないでしょうか。
例えば、数学の問題を解くことを考えてみましょう。先生から教わった解答を真似ることによって、新しい問題を解くことができるようになるという例は多いと思います。
数学に限らず、例えばダンスや習字、そしてゲームに至るまで、上達するための様々な学びの中で、我々は誰かの真似をすることによって上達していきます。
私の研究では、生徒の学習行動データを集めて分析し、得られた知見を基により良い学習を実現する「ラーニングアナリティクス」に取り組んでいます。
他人のプログラミングを真似たいが…
具体的に、電子教科書の利用データを活用し、他の生徒のマーカーの引き方を真似ることで、より良い学習法を得られる可能性がわかりました。このように教育のデジタルデータを活用することで、より良い学習を実現することに取り組んでいます。
ではプログラミングは苦手という人のために、他の生徒を真似しながら、上達の近道になるプログラミング学習の話をしましょう。
プログラミングの授業で、プログラムをプログラミング言語で記述することをコーディングといいます。他の生徒のコーディングを見る機会はあまり多くありません。プログラミング、ちょっと苦手だなあと思う人でも、他の生徒のコーディングの仕方を真似することは少ないと思います。
プログラミング学習の「獣道」を探そう
しかし、もし他の人の書いたプログラミングコードを見ることができたら、どんなにメリットがあるでしょうか。
例えば模範回答とも違う別解を知ることができたり、自分は体験しなかったような失敗を追体験することができたり。他の人の苦労を知ることによって、苦労しているのは自分だけじゃないんだと不安を払拭することができたりします。
私はこういったことが簡単に実現できる効果的な情報を提供する仕組みを研究しています。
では、どうやってそのような情報提供を実現できるでしょうか。
私のアイデアは、「獣道」を見出だすという考え方です。獣道とは、多数が通った道、すなわちある種の共通パターンを表していると考えることができます。
ここで、獣道を作りだす元となる一連の足跡というのは、生徒が書き換えていったプログラミングコードのその時々の状態と考えてください。つまり獣道とは、多数の生徒が同じような方法でコーディングすることで初めて生まれる、共通するコーディングの過程を表したものだと考えることができます。
実際にデータに記録されたコーディングの過程の軌跡が、上の図です。
1番左が書き始め、プログラミングを書き進むにつれて右に向かって移動しています。みんながみんないつも同じ道を辿っている訳ではありませんが、一部軌跡が重なって白くなっているところがあり、これが正に獣道ということになります。白い獣道の軌跡は太くなっていて、獣道からはずれた異なる解き方、間違い方にどのようなものがあるのかわかりやすくなっています。
このようにして、プロラミングの学習プロセスに対して新しい視点というのを導入することができました。
この技術は、プログラミングだけでなく、作文をともなう様々な科目で他の生徒の書き方を学ぶ機会を作り出すことに役立つと考えています。
◆先生は研究テーマをどのように見つけたのでしょうか。
自分はプログラミングが好きなので、他の人達にも好きになって欲しいと考えています。しかし、やはり得意不得意はありますし、好き嫌いも分かれます。プログラミングの授業を担当して、多くの方のプログラミング学習を支援する中で、どうしたらわかるようになるんだろう?どうしたら楽しんでもらえるだろう?といったことを常に考えてきました。
しかし、やがて自分ひとりで見れる人数に限界を感じ、また相手の気持ちや考えを理解するのにとても時間がかかることを認識しました。そこで自分の情報科学の知識とスキルを用い、データからより多くの方について、短時間で理解できる方法を研究するようになりました。